//
// Created by A4-28 on 2020/10/13.
//
#include <glm/glm.hpp>
#include <glm/gtx/quaternion.hpp>
#include <glm/gtc/matrix_transform.hpp>
#include "glm/gtx/euler_angles.hpp"
#include "math_defs.h"

namespace WF {
    class Quaternion {

    public:

        /**
         * 欧拉角转四元数
         * @param euler  角度
         * @return
         */
        static glm::quat EulerToQuaternion(glm::vec3 euler);
        /**
         * 四元数转欧拉角
         * @param quaternion
         * @return euler 角度
         */
        static glm::vec3 QuaternionToEuler(glm::quat quaternion);
        /**
         * 欧拉角转矩阵
         * @param euler
         * @return
         */
        static glm::mat4 EulerToMatrix(glm::vec3 euler);
    };

}




